home *** CD-ROM | disk | FTP | other *** search
- Copyright (c) NetHack PC Development Team 1990 - 1993.
- NetHack may be freely redistributed. See license for details.
- ======================================================
- Instructions for compiling and installing
- NetHack 3.1 on a Windows NT system
- ======================================================
- (or, How to make NT NetHack 3.1.3)
- Last revision: Jun 30, 1993
-
- Credit for the PC versions of NetHack goes to the PC Development team
- consisting of Norm Meluch, Kevin Smolkowski, Paul Winner and Steve
- VanDevender who built on the work of Pierre Martineau, Stephen Spackman,
- Steve Creps, Mike Threepoint and Don Kneller.
-
- Credit for the porting of NetHack to Windows NT goes to the NT Porting
- Team started by Michael Allison.
-
- The NT porting team also wishes to thank the following people for
- their help, testing effort, and suggestions which contributed to the
- completion of the first Windows NT port of NetHack: Doug Thompson,
- Phil Mills, Scott Murray.
-
- This current version of NetHack for Windows NT is a tty port utilizing
- the NT WIN32 Console I/O subsystem.
-
-
- I. Dispelling the Myths:
-
- Compiling NetHack is not as easy as it sounds, nor as hard as it looks,
- however it will behoove you to read this entire file through before
- beginning the task.
-
- We have provided the proper makefiles for building NetHack using the
- following compilers:
-
- Microsoft Windows NT March 1993 SDK C Compiler.
-
- All the makefiles were created for use with MS NMAKE which
- is provided with the Windows NT SDK (Software Development Kit).
-
- You may find it useful to obtain copies of lex (flex) and yacc (bison).
- While not strictly necessary to compile nethack, they are required should
- you desire to make any changes to the level and dungeon compilers.
- Flex and Yacc for NT are available in the "Porting from UNIX to
- NT" library on the MSWIN32 Forum on compuserve and other places.
-
- To use the distributed NetHack icon, a version of uudecode is required,
- but this is not a necessary step for compiling NT NetHack.
-
- II. To compile your copy of NetHack on a Windows NT machine:
- (or "just follow these few 'simple' steps outlined below.")
-
- Setting Up
-
- 1. It almost goes without saying that you should make sure that your tools
- are set up and running correctly.
-
- 2. Make sure all the NetHack files are in the appropriate directory
- structure. You should have a main directory with subdirectories
- dat, doc, include, src, sys\share, sys\winnt, util and win\tty.
- Other subdirectories may also be included in your distribution, but
- they are not necessary for use with NT. You can delete them
- to save space.
-
- Required Directories for NT:
-
- top
- |
- --------------------------------------------
- | | | | | | |
- util dat doc include src sys win
- | |
- ------ ----
- | | |
- share winnt tty
-
-
- Check the file "Files" in your top level directory for an exact
- listing of what file is in which directory. In order for the
- Makefiles to work, all the source files must be in the proper
- locations.
-
- If you downloaded or ftp'd the sources from a UNIX system, the lines
- will probably end in UNIX-style newlines, instead of the carriage
- return and line feed pairs used by DOS. Some programs have trouble
- with them, so you may need to convert them (with a utility like
- Rahul Dhesi's "flip"). Also, every file should end with an empty
- line, because Microsoft C has a habit of ignoring the
- last line of each file.
-
- 3. Go to the sys\winnt directory and run the setup.bat batch file.
- The necessary Makefile movements will be accomplished for you. It
- will also verify that your directories are set up properly.
-
- 4. Now go to the include subdirectory to check a couple of the header
- files there. Things *should* work as they are, but since you have
- probably set up your system in some sort of custom configuration
- it doesn't hurt to check out the following:
-
- First check config.h according to the comments to match your system and
- desired set of features. Mostly you need to check the WIZARD option,
- make sure the HACKDIR is set properly.
-
- Also check COMPRESS.
-
- You may include all or as few of the special game features as you wish.
-
- Also check ntconf.h, which should not need much editing. It is there that
- you may choose to enable color text character support by leaving
- TERMCOLOR uncommented, or disable color support by commenting out
- TERMCOLOR.
-
- 5. If you want to change the high score list behavior, examine the top of
- topten.c, in the src directory. You may want to change the definitions of
- PERSMAX, POINTSMIN, and ENTRYMAX. I set POINTSMIN to 51 and ENTRYMAX to
- 50 to keep the size of the score list down.
-
- 6. Go to the src directory and edit the top of your Makefile.
- Change the setting of (GAMEDIR) to reflect the directory where
- you want NetHack to be installed.
-
- ie. GAMEDIR = \games\nethack
-
- The directory you specify *MUST* exist for all remaining steps to be
- successful. Be sure the directory you want the game installed
- actually exists. If it doesn't, create it now.
-
- If you elected not to use the high-quality BSD random number routines by
- commenting out RANDOM in ntconf.h, comment out (or set equal
- to nothing) the RANDOM macro in your Makefile.
-
- If you want, you can choose to have a default NetHack ICON embedded
- into your executable. You must have first uudecoded the file
- sys\winnt\nhico.uu into sys\winnt\nethack.ico.
- Change the Makefile macro RESFILE to point to the second
- choice (make the macro specify the .rbj file, rather than being set
- equal to nothing).
-
- If you are recompiling after patching your sources, or if you got your
- files from somewhere other than the official distribution, "touch
- makedefs.c" to ensure that certain files (onames.h and pm.h) are remade,
- lest potentially troublesome timestamps fool "nmake".
-
- Compiling
-
- 7. Now that everything is set up, go to the util directory and
- run nmake. If you get any errors along the way then something
- has not been set up correctly.
-
- 8. Next, go to the dat directory and run nmake (just as you did for util).
- Once again, if you get any errors then something has not been
- set up correctly.
-
- 9. Finally, go to the src directory and "nmake install". The time it takes
- to compile depends on your particular machine of course, but you should
- be able to go for lunch and return to find everything finished. The
- less memory, and slower your machine, the longer the lunch you may take.
-
- In any case, it is likely that the command prompt window where you are
- doing the compiling will be occupied for a quite a while. If all
- goes well, you will get an NetHack executable.
-
- Running NetHack
-
- 10. Make sure the support files -- data, rumors, cmdhelp, opthelp, help, hh,
- history, options and license -- were copied to the game directory. If not,
- move them there from the dat directory yourself.
- Assuming you are still in the src,dat, or util directory,
- "rumors." can be created manually by entering "..\util\makedefs -r"
- "data." can be created by entering "..\util\makedefs -d".
-
- Make sure the file NetHack.cnf made it to your game directory.
- If not, go to sys\winnt and copy winnt.cnf to NetHack.cnf in
- your game directory. Edit NetHack.cnf to reflect your
- particular setup and personal preferences, by following the comments.
-
- Running from Command Prompt
-
- 11. If you are running it from the command prompt, you must first set the
- HACKDIR environment variable to the location where the nethack
- executable resides:
-
- set HACKDIR=c:\games\nethack)
- (or whatever drive and directory you want to use)
-
- You should also add the directory containing the NetHack executable
- to your PATH, so that you can just type "nethack" or "nethack -umike"
- to start it up. Alternatively, you can explicitly invoke it with
- "c:\games\nethack\nethack" (specifying whatever drive and directory your
- executable resides in) each time.
-
-
- Running from Windows NT Program Manager
-
- 12. If you will be running it by launching it from the Program Manager,
- be sure to specify the location of your NetHack executable in the
- "Working Directory:" dialogue box field when creating your
- Program Manager Icon:
-
- ie. Description : NetHack 3.1.3
- Command Line : C:\GAMES\NETHACK\NETHACK.EXE
- Working Directory: C:\GAMES\NETHACK
- Shortcut key :
-
- 13. If you did not elect to embed an ICON into the NetHack executable
- when you built it, then you may point the program manager to the
- ICON of your choice using the program manager (f)ile, (p)roperties,
- change icon option.
-
- A NetHack icon has been provided in the file SYS\WINNT\NHICO.UU.
- This is a uuencoded copy of the icon file, and you must use uudecode
- to turn it into a Windows NT icon file, in order to use the icon.
-
- 14. Play NetHack. If it works, you're done!
-
- Notes:
-
- 1) To install an update of NetHack after changing something, enter "nmake"
- from the src directory. If you add, delete, or reorder monsters or
- objects, or you change the format of saved level files, delete any save
- and bones files. (Trying to use such files sometimes produces amusing
- confusions on the game's part, but usually crashes.)
-
- If you made changes to any of the level compiler software, you may have
- to delete dgn_flex.c, dgn_yacc.c, lev_flex.c, and lev_yacc.c from the
- util directory to ensure that they are remade.
-
- 2) The executable produced by this port is a 32-bit, flat-address space,
- non-overlayed .exe file, which should run on any Windows NT system.
- It is also a rather large file:
-
- More than 1,900,000 bytes, nethack.exe when debugging information
- is included in the .exe, and more than 1,200,000 bytes without.
-
- 3) Beginning with NetHack 3.1.3, the keyboard command sequences match
- those in the MSDOS port of NetHack more exactly. The keypad may be used for
- movement without having the NUMLOCK on. This also gives you the advantage
- of being able to RUN by pressing the SHIFT key at the same time as one
- of the directional movement keys on the keypad (1,2,3,4,6,7,8,9).
-
- 4) A true Windows (WIN32s) version of NetHack is currently under development
- by the PC Windows Porting team.
-
- 5) If you have comments or suggestions, feel free to drop any one of
- us a line c/o nethack-bugs@linc.cis.upenn.edu. From compuserve,
- try >INTERNET:nethack-bugs@linc.cis.upenn.edu.
-